\hypertarget{classsematic}{
\section{Dokumentace třídy sematic}
\label{classsematic}\index{sematic@{sematic}}
}
Sématická kontrola.  


{\tt \#include $<$sematic.h$>$}

\subsection*{Statické veřejné metody}
\begin{CompactItemize}
\item 
static bool \hyperlink{classsematic_eeccc1ffd63ed59aa3a2f0339c393744}{isValidCircle} (float, float, float, float, float, float)
\begin{CompactList}\small\item\em Ověří validnost kružnice. \item\end{CompactList}\item 
static bool \hyperlink{classsematic_8c29b18546d90aed0c8c819580268fa5}{isValidCircle} (float, float, float, float, float)
\begin{CompactList}\small\item\em Ověří validnost kružnice. \item\end{CompactList}\item 
static void \hyperlink{classsematic_9bad90c556d1f0615ed9a2f254cba37d}{getIJCoordinates} (float\mbox{[}2\mbox{]}, float, float, float, float, float, int)
\begin{CompactList}\small\item\em Získá parametry kružnice I a J. \item\end{CompactList}\item 
static bool \hyperlink{classsematic_85d82421f937f090f3b6f1e25764eadb}{isUniqName} (\hyperlink{classgObjectContainer}{gObjectContainer} \&, std::string \&)
\begin{CompactList}\small\item\em Ověří unikátnost jména objektu. \item\end{CompactList}\end{CompactItemize}


\subsection{Detailní popis}
Sématická kontrola. 

U běžných programovacích jazyků se sématickou kontrolou rozumí např. typová kontrola, smysluplnost použití operátorů atd.. Ve spojení s g-codem bude sématika ověřovat, zda zadané kružnice mají smysl. Jde o třídu se statickými metodami, které jsou přímo použity v syntaktické kontrole. 

\subsection{Dokumentace k metodám}
\hypertarget{classsematic_9bad90c556d1f0615ed9a2f254cba37d}{
\index{sematic@{sematic}!getIJCoordinates@{getIJCoordinates}}
\index{getIJCoordinates@{getIJCoordinates}!sematic@{sematic}}
\subsubsection[{getIJCoordinates}]{\setlength{\rightskip}{0pt plus 5cm}void sematic::getIJCoordinates (float {\em s}\mbox{[}2\mbox{]}, \/  float {\em r}, \/  float {\em x0}, \/  float {\em y0}, \/  float {\em x1}, \/  float {\em y1}, \/  int {\em p})\hspace{0.3cm}{\tt  \mbox{[}static\mbox{]}}}}
\label{classsematic_9bad90c556d1f0615ed9a2f254cba37d}


Získá parametry kružnice I a J. 

Na základě parametrů získané z kružnice zadané pomocí parametru R spočte parametry I a J. \begin{Desc}
\item[Parametry:]
\begin{description}
\item[{\em S}]Pole, kde se uloží velikost parametrů I a J. \item[{\em r}]Velikost poloměru kružnice. \item[{\em x0}]X-ová souřadníce prvního bodu. \item[{\em y0}]Y-ová souřadníce prvního bodu. \item[{\em x1}]X-ová souřadnice druhého bodu \item[{\em y1}]Y-ová souřadnice druhého bodu. \item[{\em p}]Orientace kružnice TYPE\_\-ARC\_\-CLOCK nebo TYPE\_\-ARC\_\-COUNTER. \end{description}
\end{Desc}
\hypertarget{classsematic_85d82421f937f090f3b6f1e25764eadb}{
\index{sematic@{sematic}!isUniqName@{isUniqName}}
\index{isUniqName@{isUniqName}!sematic@{sematic}}
\subsubsection[{isUniqName}]{\setlength{\rightskip}{0pt plus 5cm}bool sematic::isUniqName ({\bf gObjectContainer} \& {\em container}, \/  std::string \& {\em name})\hspace{0.3cm}{\tt  \mbox{[}static\mbox{]}}}}
\label{classsematic_85d82421f937f090f3b6f1e25764eadb}


Ověří unikátnost jména objektu. 

Dalším úkolem sématické kontroly je ověřit, zda jsou jména objektů unikátní. Vrací true pokud je jméno unikátní. \begin{Desc}
\item[Parametry:]
\begin{description}
\item[{\em container}]Kontejner, pro který chceme ověřit unikátnost jména. \item[{\em name}]Jméno, které chceme ověřit. \end{description}
\end{Desc}
\hypertarget{classsematic_8c29b18546d90aed0c8c819580268fa5}{
\index{sematic@{sematic}!isValidCircle@{isValidCircle}}
\index{isValidCircle@{isValidCircle}!sematic@{sematic}}
\subsubsection[{isValidCircle}]{\setlength{\rightskip}{0pt plus 5cm}bool sematic::isValidCircle (float {\em x0}, \/  float {\em y0}, \/  float {\em x1}, \/  float {\em y1}, \/  float {\em r})\hspace{0.3cm}{\tt  \mbox{[}static\mbox{]}}}}
\label{classsematic_8c29b18546d90aed0c8c819580268fa5}


Ověří validnost kružnice. 

Pro kružnice zadané pomocí parametru R ověří jejich platnost, tedy jestli dávají smysl a vrací true v případě, že smysl mají. \begin{Desc}
\item[Parametry:]
\begin{description}
\item[{\em x0}]X-ová souřadníce prvního bodu. \item[{\em y0}]Y-ová souřadníce prvního bodu. \item[{\em x1}]X-ová souřadnice druhého bodu \item[{\em y1}]Y-ová souřadnice druhého bodu. \item[{\em r}]Velikost poloměru kružnice. \end{description}
\end{Desc}
\hypertarget{classsematic_eeccc1ffd63ed59aa3a2f0339c393744}{
\index{sematic@{sematic}!isValidCircle@{isValidCircle}}
\index{isValidCircle@{isValidCircle}!sematic@{sematic}}
\subsubsection[{isValidCircle}]{\setlength{\rightskip}{0pt plus 5cm}bool sematic::isValidCircle (float {\em x0}, \/  float {\em y0}, \/  float {\em x1}, \/  float {\em y1}, \/  float {\em i}, \/  float {\em j})\hspace{0.3cm}{\tt  \mbox{[}static\mbox{]}}}}
\label{classsematic_eeccc1ffd63ed59aa3a2f0339c393744}


Ověří validnost kružnice. 

Pro kružnice zadané pomocí parametrů I a J ověří jejich platnost, tedy jestli dávají smysl a vrací true v případě, že smysl mají. \begin{Desc}
\item[Parametry:]
\begin{description}
\item[{\em x0}]X-ová souřadníce prvního bodu. \item[{\em y0}]Y-ová souřadníce prvního bodu. \item[{\em x1}]X-ová souřadnice druhého bodu \item[{\em y1}]Y-ová souřadnice druhého bodu. \item[{\em i}]Středová souřadnice X, relativně zadaná vůči prvnímu bodu. \item[{\em j}]Středová souřadnice Y, relativně zadaná vůči prvnímu bodu. \end{description}
\end{Desc}


Dokumentace pro tuto třídu byla generována z následujících souborů:\begin{CompactItemize}
\item 
src/sematic.h\item 
src/sematic.cpp\end{CompactItemize}
